// packinfo.js的参考文件，实际运行时无用
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
module.exports = {
	port: 3000, 		//端口值（number类型）
	dbName: "dbName", 	//数据库名称
	
	collection: {
		//集合创建 按实际情况编写collection里的内容（语法参考mongoose中添加集合 http://www.mongoosejs.net/）
		//若需要一个user集合和一个与user的_id相关联的notes集合，添加如下
		user:{					//被创建的集合名称
			name:{type:String}, 	//用户名 String类型
			psw:{type:String}, 		//密码 String类型
		}
		notes:{
			userID:{type:Schema.Types.ObjectID,ref:'users'}, 	//用户id 与user的_id相关联
			costName:{type:String}, 							//消费项目
			price:{type:Number}, 								//价格
			type:{type:Number}, 								//消费类型
			time:{type:Date} 									//日期
		}
	},
	
	//操作数据库
		//数据库操作包括四种add、read、delete、update，每一种只能操作一种数据库
		//只有read会返回数据库数据，其他三个只会返回配置的信息
		//接口地址为 ip/API名称
	crud:{
		add:{
			users:{						//被操作的集合名称
				name:"adduser", 			//API名称（接口调用时，加在IP末尾）
				arg:["name","psw"],			//传入的参数，前端的提交的数据需写在 data{} 内，即 data{name:"sdfsd",psw:"sdfsdf"}
				err:{						//调用失败时返回的信息，Json类型
					status:500,
					errInfo:"添加用户失败"
				},
				success:{					//调用成功时返回的信息，Json类型
					status:200,
					successInfo:"添加用户成功"
				}
			},
			notes:{
				name:"addnote",
				arg:["costName","price","type","time"],
				err:{
					status:500,
					errInfo:"添加信息失败"
				},
				success:{
					status:200,
					errInfo:"添加信息成功"
				}
			}
		},
		read:{
			users:{							//被操作的集合名称
				name:"finduser",				//API名称
				arg:[],							//查找索引，若为空，表示集合内所有
				out:["name","psw","_id"],		//输出的数据
				err:{							//调用失败时返回的信息，Json类型
					status:500,
					errInfo:"查找用户失败"
				},
				success:{						//调用成功时返回的信息，Json类型 附查找结果result
					status:200,
					successInfo:"查找用户成功"
				}
			},
			notes:{
				name:"findnote",
				arg:["userID"],
				out:["userID","costName","price","type","time"],
				err:{
					status:500,
					errInfo:"查找记录失败"
				},
				success:{
					status:200,
					successInfo:"查找记录成功"
				}
			}
		},
		del:{
			users:{							//被操作的集合名称
				name:"deluser",					//API名称
				arg:["name"],					//删除索引
				err:{							//调用失败时返回的信息，Json类型
					status:500,
					errInfo:"删除用户失败"
				},
				success:{						//调用成功时返回的信息，Json类型
					status:200,
					successInfo:"删除用户成功"
				}
			},
			notes:{
				name:"delnote",
				arg:["_id"],
				err:{
					status:500,
					errInfo:"删除信息失败"
				},
				success:{
					status:200,
					successInfo:"删除信息成功"
				}
			}
		},
		update:{
			users:{								//被操作的集合名称
				name:"updateuser",					//API名称
				arg:["_id"],						//删除索引 注意：这里提交的修改值必须将不修改的值也提交
				err:{								//调用成功时返回的信息，Json类型
					status:500,
					errInfo:"更新用户失败"
				},
				success:{							//调用成功时返回的信息，Json类型
					status:200,
					successInfo:"更新用户成功"
				}
			}
		}
	}
}